맨위로가기

모토로라 68881

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

모토로라 68881은 1980년대에 68020 및 68030 마이크로프로세서와 함께 사용하기 위해 설계된 부동 소수점 연산 장치(FPU)이다. 68881은 8개의 80비트 레지스터를 가지고 있으며 IEEE 754 표준에 정의된 단정밀도, 배정밀도, 확장 정밀도와 같은 다양한 부동 소수점 수치 표현을 지원한다. 68881은 메인 CPU와 병렬로 작동하며, CPU가 FPU 명령어를 만나면 FPU에 피연산자를 넘겨주고 FPU가 결과를 계산하는 동안 CPU는 다른 명령어를 실행한다. 68881의 개선된 버전인 68882는 더 높은 클럭 속도에서 작동하며, 68881과 핀 호환이 가능하다. 68881 및 68882는 썬 마이크로시스템즈, IBM, 애플, 넥스트, 샤프, 아미가, 아타리 등 다양한 컴퓨터 시스템에 사용되었다. 후속 프로세서인 68040부터는 FPU가 CPU에 통합되었다.

더 읽어볼만한 페이지

  • 모토로라 제품 - 프로젝트 아라
    구글이 추진했던 프로젝트 아라는 사용자가 필요에 따라 부품을 조립하거나 교체할 수 있도록 설계된 모듈형 스마트폰 개발 프로젝트였으나, 기술적 문제와 높은 제조 비용으로 인해 2016년에 개발이 중단되었다.
  • 모토로라 제품 - 모토로라 모토
    모토는 구글이 모토로라를 인수한 후 변경된 브랜드명으로, 안드로이드 운영체제를 탑재한 모토 X, 모토 G, 모토 E 시리즈 스마트폰과 안드로이드 웨어를 탑재한 모토 360 스마트워치 등이 있다.
  • 부동소수점 - IEEE 754
    IEEE 754는 부동소수점 숫자를 표현하고 처리하기 위한 국제 표준으로, 다양한 형식과 연산, 반올림 규칙, 예외 처리 등을 정의한다.
  • 부동소수점 - IEEE 754-1985
    IEEE 754-1985는 부동소수점 수의 표현, 연산, 반올림 등을 정의하는 기술 표준으로, 부호 비트, 지수, 가수를 사용하여 숫자를 표현하며, 단정밀도, 배정밀도, 확장 정밀도 형식을 제공하고, 0, 무한대, NaN과 같은 특수한 값을 정의하며, 표준 연산과 다양한 함수 및 술어를 제공한다.
  • 코프로세서 - 제온 파이
    제온 파이는 인텔에서 개발한 x86 기반 메니코어 프로세서로, 나이츠 페리, 나이츠 코너, 나이츠 랜딩, 나이츠 밀 등의 모델이 있으며, AVX-512 명령어 세트 지원을 통해 고성능 컴퓨팅 환경에서 복잡한 연산을 효율적으로 처리하는 데 중점을 둔다.
  • 코프로세서 - 엔비디아 테슬라
    엔비디아 테슬라는 엔비디아가 개발한 고성능 GPU 제품군으로, CUDA를 활용한 병렬 컴퓨팅 환경을 제공하여 다양한 분야에서 고성능 컴퓨팅을 지원하며, 여러 마이크로아키텍처 기반 모델을 통해 발전해왔고, 메모리 및 통신 대역폭을 늘리는 혁신을 거듭해왔다.
모토로라 68881
요약 정보
모토로라 68881 FPU
모토로라 68881 FPU
유형부동소수점 유닛
소개일1985년
중단일1995년경
명령어 집합 구조모토로라 68000
코어부동소수점 유닛
L1 캐시해당 없음
최대 작동 주파수16-25 MHz
버스 속도16-25 MHz
전력 소비1.5 와트 (최대)
트랜지스터 수55,000
다이 면적71 mm²
제조 공정2 μm
패키지68핀 PGA
소켓해당 없음
제품
MC6888116 MHz, 20 MHz
MC6888216 MHz, 20 MHz, 25 MHz, 33 MHz, 40 MHz

2. 특징

68020과 68030은 별도의 68881 칩을 사용하도록 설계되었다. 16진수 "F"로 시작하는 모든 오프코드는 예약된 "F-라인 명령어"로, 인터럽트를 발생시키는 "트랩"을 통해 컴퓨터의 OS로 제어권을 넘긴다. 68881이 시스템에 존재하면 68881이 그 명령어를 실행하고, 존재하지 않으면 OS는 정수 기반의 FPU 에뮬레이터로 명령어를 실행하거나 프로그램에 오류 코드를 출력한다.

68881은 부동소수점 연산에 특화되어 설계되었으며, 범용 CPU 기능은 없다. 명령어에서 주소 계산이 필요할 경우, 68881에 제어권을 주기 전에 메인 CPU가 처리해야 한다.

CPU/FPU는 동시에 동작하도록 설계되었다. CPU가 68881 명령어를 만나면 필요한 피연산자(operand)를 FPU로 넘겨주고 FPU가 결과를 출력하는 동안 다음 명령어를 실행한다.

2. 1. 아키텍처

68881은 8개의 80비트 레지스터를 가지고 있으며, IEEE 754 표준에 정의된 다양한 부동 소수점 수치 표현(단정밀도, 배정밀도, 확장 정밀도) 및 정수, BCD 형식을 지원한다.[2][5] 부동 소수점 연산에 특화되어 설계되었으며, 범용 CPU 기능은 없다. 예를 들어 명령어에서 주소 계산이 필요할 경우, 68881에 제어권을 주기 전에 메인 CPU가 그것을 처리해야 한다.

CPU/FPU는 동시에 동작하도록 설계되었다. CPU가 68881 명령어를 만나면 명령어가 필요로 하는 모든 피연산자(operand)를 FPU로 넘겨주고 FPU가 결과를 출력하는 동안 다음 명령어를 실행한다.

모토로라(Motorola) 68881/68882 시리즈 레지스터
종류내용
부동 소수점 레지스터80비트 레지스터 8개 (FP0 ~ FP7)
제어 레지스터예외 활성화, 모드 제어
상태 레지스터조건, 몫, 예외 상태, 발생 예외
명령어 주소 레지스터32 비트 주소


2. 2. 68882

'''모토로라 68882'''('''MC68882''')는 68881의 개선된 버전으로, 파이프라인 개선과 고클럭화가 이루어졌다. 명령어 세트는 68881과 동일하며, 핀 호환이 가능하다.[3][4] 모토로라는 같은 클럭 속도에서 68881보다 일부 명령어를 40% 더 빠르게 실행한다고 주장했지만, 일반적인 성능에는 반영되지 않았다.

모토로라 68882 FPU


68882는 FSAVE 명령으로 저장되는 상태 정보(프레임)가 68881보다 크다. 68881의 아이들 프레임은 28바이트, 비지 프레임은 184바이트인데 비해, 68882는 아이들 프레임은 60바이트, 비지 프레임은 216바이트이다. 이 때문에 FSAVE 명령으로 저장된 스택 상의 정보를 참조하는 예외 처리 핸들러 작성 시 오프셋 주소에 주의해야 했다. 이러한 변경 사항은 UNIX와 같이 더 많은 공간을 할당하도록 수정해야 했던 선점형 멀티태스킹 운영체제에 영향을 미쳤다.

2. 3. 사용 예시

썬 마이크로시스템즈의 Sun 3 워크스테이션, 애플매킨토시 II 제품군, 코모도어의 아미가 3000, 아타리의 TT 및 팔콘 등에 사용되었다.[6] 일부 아미가아타리 서드파티 제품에서는 68000 CPU에 메모리 맵된 주변 장치로 사용되기도 했다.

3. 제품 성능

모토로라 68881 및 68882, 그리고 모토로라 68040에 내장된 부동 소수점 장치(FPU)의 성능은 클럭 속도에 따라 달라진다.

프로세서클럭 속도 (MHz)성능
6888116
6888120
6888125
6888225264 KFLOPS
6888233352 KFLOPS
6888240422 KFLOPS
6888250528 KFLOPS
68040 (내장 FPU)253.5 MFLOPS
68040 (내장 FPU)334.662 MFLOPS
68040 (내장 FPU)405.6 MFLOPS



68881은 155,000개, 68882는 176,000개의 트랜지스터로 구성되었다. 16MHz 및 20MHz 버전의 68882도 생산되었지만, 성능 자료는 없다. 68040부터는 FPU가 CPU에 통합되었다.[1]

3. 1. 68881

트랜지스터 155,000개로 구성되었다.

버전성능
12 MHz정보 없음
16 MHz
20 MHz
25 MHz


3. 2. 68882

68882는 176,000개의 트랜지스터로 구성된 부동 소수점 보조 프로세서이다. 성능은 다음과 같다.

주파수성능 (KFLOPS)
25 MHz264
33 MHz352
40 MHz422
50 MHz528



16MHz 및 20MHz 버전의 68882에 대한 성능 자료는 없지만, 실제로 생산되었다.

3. 3. 68040

모토로라 68040부터 부동 소수점 장치(FPU)가 CPU 자체에 통합되었다.[1]

클럭 속도성능 (MFLOPS)
25 MHz3.5
33 MHz4.662
40 MHz5.6



위 표는 [http://www.esacademy.com/automation/faq/m68k/ comp.sys.m68k FAQ]에서 인용한 것이다.[1] 16MHz와 20MHz 68882는 생산되었지만, 목록에는 없다.[1]

참조

[1] 서적 High Performance Computing: Modern Systems and Practices https://books.google[...] Morgan Kaufmann
[2] 간행물 MC68881 Technical Summary HCMOS Floating Point Coprocessor https://pdf.datashee[...] Motorola
[3] 웹사이트 Frequently Asked Questions (FAQ) comp.sys.m68k http://www.faqs.org/[...] 1996-01-06
[4] 간행물 MC68882 Technical Summary HCMOS Floating Point Coprocessor https://pdf.datashee[...] Motorola
[5] 서적 Assembly language and systems programming for the M68000 family Jones and Bartlett Publishers 1997-11-07
[6] 서적 Computer Organization and Design: The Hardware/Software Interface Morgan Kaufmann Publishers



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com